The invention relates generally to a system for testing performance of a telephone network echo canceller and more specifically to a test system that rates echo canceller performance according to user perceptual annoyance.
FIG. 1 is a schematic of a packet-based telephone system 12. A telephone 14 is coupled through a transmission channel 16 to a tail circuit 18. The transmission channel 16 includes a Public Branch Exchange (PBX) 20 that couples the telephone 14 to a voice packet gateway 22 in a packet-switched network 24. Another voice packet gateway 26 at another location in the packet-switched network 24 is connected through a PBX 28 to a telephone 30 in the tail circuit 18.
The telephone 14 is in a first location, such as San Jose, and the telephone 30 is in a second location, such as Montreal. A user of telephone 14 in San Jose may experience an echo problem when connected to the telephone 30 in Montreal. The echo problem is typically created when the tail circuit 30 in Montreal allows some of the audio signal from a transmission audio path 32 to leak through into the audio signal on a return audio path 34. The leaking audio signal in the return audio path 34 is represented by a dotted line 36 and is perceived as echo at the San Jose telephone 14.
The tail circuit 18 represents the electrical equipment, such as Public Branch Exchange's (PBX's), telephones, microphones, transformers, etc., at the far end of the phone call to the right of the gateway 26. The tail circuit 18 shown in FIG. 1 includes any equipment in Montreal that creates the echo signal 36.
Referring to FIG. 2, the standard solution for removing echo is to use an echo canceller 38. In the case of the network shown in FIG. 2, the echo canceller 38 runs on the packet voice gateway 26 on the Montreal edge of the tail circuit 18. The packet voice gateway 26 converts audio signals from the PBX 28 into voice packets for sending over the packet switched network 24. In the other direction, the gateway 26 converts voice packets back into audio signals for sending to PBX 28. Echo cancellers are used in both traditional circuit switched networks, such as used in tail circuit 18, and packet switched networks, such as network 24.
The echo canceller 38 is typically a four-terminal device containing an adaptive Finite Impulse Response (FIR) filter. The FIR filter starts with zero knowledge about the system it is connected to, in this case the tail circuit 18. By listening to the transmitted speech signal 32 and the echo signal 36 returning from the tail circuit 18, the adaptive filter in echo canceller 38 dynamically modifies filter coefficients to rapidly form an internal, functional model of the tail circuit 18.
Using this internal ‘recipe’, the echo canceller 38 produces a sample by sample estimate of the echo signal 36. This estimated echo signal is subtracted from the real echo signal 36. As the internal model in the echo canceller 38 improves over time in converging on the echo signal 36, attenuation of the echo signal 36 increases. As a result, the echo canceller 38 attenuates the echo signal 36 that normally returns to the phone 14 in San Jose while allowing the audio signal 34 from a talker at phone 30 to pass through.
FIG. 3. represents a traditional echo canceller performance testbed, as described in International Telecommunications Union ITU-T specifications G.165 and G.168. The echo canceller 38 has four audio terminals. A prerecorded speech or noise signal 46 is input to the echo canceller 38 under test. ITU specification G.165 specifies inputting a white noise excitation signal 46 and ITU specification G.168 employs a pseudo-speech signal 46.
A tail circuit emulator 42 includes a set of parallel audio delay lines 47, 48 and 50 that provide a simple three-reflector model of three different echo delays and associated echo amplitudes. Echo of the speech or noise signal 46 is generated by the tail circuit emulator 42 and fed back into the echo canceller 38. The level of the returning echo signal 52 allowed to pass through the echo canceller 38 is recorded by an audio recorder 44.
In both ITU specifications, the performance of the echo canceller 38 is rated on a purely objective standard. The performance of the echo canceller 38 is rated based on the convergence time required to attenuate the echo signal 52 to a predefined threshold, i.e., the time required to alternate the echo signal to a certain level. In other words, the less echo signal received by the recorder 44, the better the rated performance of the echo canceller 38. A problem exists when using the G.165 and G.168 standards for measuring echo canceller performance. The white noise or pseudo-speech signals 46 input into the echo canceller 38 do not accurately reflect ‘real-world’ audio signals that are normally produced by a telephone user. The performance of the echo canceller 38 is generally poorer when the excitation signal is real human speech. This is because the spectral content of human speech is ‘poor’ compared to the ‘richness’ of white noise test signals.
Also, a simple three-reflector model is not necessarily a good model for emulating actual tail circuit impulse responses. For example, the tail circuit 18 shown in FIG. 2 may have many more than three different echo delay times all with varying amplitudes. The echo canceller 38 may not be effective in canceling some of these other echo characteristics. Further, some echo characteristics may be very annoying to a phone user and other echo characteristics may have little or no annoyance to the user. Simply measuring objective results, such as white-noise convergence time, does not effectively identify perceived echo annoyance to a user.
Accordingly a need remains for more effectively testing echo canceller performance.